6 research outputs found

    Surveying the factors that influence maintainability: research design

    Get PDF
    We want to explore and analyse design decisions that influence maintainability of software. Software maintainability is important because the effort expended on changes and fixes in software is a major cost driver. We take an empirical, qualitative approach, by investigating cases where a change has cost more or less than comparable changes, and analysing the causes for those differences. We will use this analysis of causes as input to following research in which the individual contributions of a selection of those causes will be quantitatively analysed

    Harmfulness of Code Duplication - A Structured Review of the Evidence

    Get PDF
    Duplication of code has long been thought to decrease changeability of systems, but recently doubts have been expressed whether this is true in general. This is a problem for researchers because it makes the value of research aimed against clones uncertain, and for practitioners as they cannot be sure whether their effort in reducing duplication is well-spent. In this paper we try to shed light on this is-sue by collecting empirical evidence in favor and against the nega-tive effects of duplication on changeability. We go beyond the flat yes/no-question of harmfulness and present an explanatory model to show the mechanisms through which duplication is suspected to affect quality. We aggregate the evidence for each of the causal links in the model. This sheds light on the current state of duplication re-search and helps practitioners choose between the available mitiga-tion strategies

    Structured Review of the Evidence for Effects of Code Duplication on Software Quality

    Get PDF
    This report presents the detailed steps and results of a structured review of code clone literature. The aim of the review is to investigate the evidence for the claim that code duplication has a negative effect on code changeability. This report contains only the details of the review for which there is not enough place to include them in the companion paper published at a conference (Hordijk, Ponisio et al. 2009 - Harmfulness of Code Duplication - A Structured Review of the Evidence)

    Structured Review of Code Clone Literature

    Get PDF
    This report presents the results of a structured review of code clone literature. The aim of the review is to assemble a conceptual model of clone-related concepts which helps us to reason about clones. This conceptual model unifies clone concepts from a wide range of literature, so that findings about clones can be compared with each other

    The impact of architectural decisions on quality attributes of enterprise information systems: a survey of the design space

    Get PDF
    Design of enterprise information systems is a problem-solving activity. A system architect, designer and programmer make numerous decisions about the structure and behaviour of the system on various levels. These decisions define the quality of the system under design (SuD) in all its aspects. An example of an application-level decision is whether to structure the domain logic according to a domain model, a table module or a transaction script. We want to investigate the effects of such decisions on quality attributes of software. This will allow us to make better software and to predict the quality of software before it is built. In this research, we try to empirically validate or reject hypotheses like: ĀæIn the majority of systems above 500 function points, systems with a domain model have better changeability than systems with a table module.Āæ If the validity of such hypotheses depend on the context of the system, we want to know in which cases the hypotheses hold and in which they do not. To be able to do such empirical research, we first need to develop a theoretical framework that defines the research context. This framework defines concepts like design problems, options and quality indicators. The design problems and options define choices a systems designer makes when designing a system. The quality indicators define if an option is better than another option: the notion of ĀæbetterĀæ is operationalized by means of quality indicators. The three together form the design space. Other design space models are discussed in section 4. The goal of this paper is to present a design space as a framework for empirical research
    corecore